package com.purchase.manage.damian;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.purchase.common.annotation.Excel;
import com.purchase.common.core.domain.BaseEntity;

/**
 * 工程类询价单对象 order_project_quotation
 *
 * @author purchase
 * @date 2023-07-09
 */
@Data
public class OrderProject extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 工程类询价单id */
    private Long projectId;

    /** 所属订单 */
    @Excel(name = "所属订单")
    private Long orderId;

    /** 维修项目 */
    @Excel(name = "维修项目")
    private String maintenanceItems;

    /** 维修日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "维修日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date repairDate;

    /** 联系人 */
    @Excel(name = "联系人")
    private String contacts;

    /** 联系人电话 */
    @Excel(name = "联系人电话")
    private String contactsPhone;

    /** 报价单位 */
    @Excel(name = "报价单位")
    private String corporateName;

    /** 所属公司id */
    @Excel(name = "所属公司id")
    private Long supplierId;

    /** 维修地点 */
    @Excel(name = "维修地点")
    private String repairLocation;

    /** 对接人电话 */
    @Excel(name = "对接人电话")
    private Long abutmentPhone;

    /** 含运费、安装调试、税等总价（元） */
    @Excel(name = "含运费、安装调试、税等总价", readConverterExp = "元=")
    private BigDecimal countPrice;

    /** 第三方单位现场勘察情况 */
    @Excel(name = "第三方单位现场勘察情况")
    private String situation;

    /** 报价单副本图片地址 */
    @Excel(name = "报价单副本图片地址")
    private String quotationCopyPhoto;

    private List<OrderProjectList> orderProjectLists;

    //b.supplier_id
    private String bid;
    //b.state
    private String state;

    public List<OrderProjectList> getOrderProjectLists() {
        return orderProjectLists;
    }

    public void setOrderProjectLists(List<OrderProjectList> orderProjectLists) {
        this.orderProjectLists = orderProjectLists;
    }

    public void setProjectId(Long projectId)
    {
        this.projectId = projectId;
    }

    public Long getProjectId()
    {
        return projectId;
    }
    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }
    public void setMaintenanceItems(String maintenanceItems)
    {
        this.maintenanceItems = maintenanceItems;
    }

    public String getMaintenanceItems()
    {
        return maintenanceItems;
    }
    public void setRepairDate(Date repairDate)
    {
        this.repairDate = repairDate;
    }

    public Date getRepairDate()
    {
        return repairDate;
    }
    public void setContacts(String contacts)
    {
        this.contacts = contacts;
    }

    public String getContacts()
    {
        return contacts;
    }

    public void setCorporateName(String corporateName)
    {
        this.corporateName = corporateName;
    }

    public String getCorporateName()
    {
        return corporateName;
    }
    public void setSupplierId(Long supplierId)
    {
        this.supplierId = supplierId;
    }

    public Long getSupplierId()
    {
        return supplierId;
    }
    public void setRepairLocation(String repairLocation)
    {
        this.repairLocation = repairLocation;
    }


    public String getRepairLocation()
    {
        return repairLocation;
    }
    public void setCountPrice(BigDecimal countPrice)
    {
        this.countPrice = countPrice;
    }

    public BigDecimal getCountPrice()
    {
        return countPrice;
    }
    public void setSituation(String situation)
    {
        this.situation = situation;
    }

    public String getSituation()
    {
        return situation;
    }
    public void setQuotationCopyPhoto(String quotationCopyPhoto)
    {
        this.quotationCopyPhoto = quotationCopyPhoto;
    }

    public String getQuotationCopyPhoto()
    {
        return quotationCopyPhoto;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("projectId", getProjectId())
                .append("orderId", getOrderId())
                .append("maintenanceItems", getMaintenanceItems())
                .append("repairDate", getRepairDate())
                .append("contacts", getContacts())
                .append("contactsPhone", getContactsPhone())
                .append("corporateName", getCorporateName())
                .append("supplierId", getSupplierId())
                .append("repairLocation", getRepairLocation())
                .append("abutmentPhone", getAbutmentPhone())
                .append("countPrice", getCountPrice())
                .append("situation", getSituation())
                .append("quotationCopyPhoto", getQuotationCopyPhoto())
                .toString();
    }
}
